

function say() {
    alert("3. 无重复字符的最长子串");
}
say();
/**
 * @param {string} s
 * @return {number}
 */
var lengthOfLongestSubstring = function(s) {
    //1:43-58
    //滑动窗口,size1; 扩大窗口,如果加入的元素跟之前的重复, left+1,窗口size-1

    if(s.length == 0){
        return 0
    }
    var res = 1
    var wSize = 1
    var str = s[0]
    for(var i = 1; i < s.length; i++){
        var idx = str.indexOf(s[i])
        if(idx >= 0) { //包含
            //定位到重复元素,删除重复之前的所有元素
            str = str.substring(idx + 1)
        }
        str += s[i]
        res = Math.max(res, str.length)
    }

    return res
};
